package org.example.textBlock;

import org.junit.Test;

public class test {
    /**
     * 文本块以3个双引号开始合结束
     * 不能放在单行
     */
    @Test
    public void test01() {
        String aa = """
                hello world
                select * from dual
                """;
        String bb = """
                hello world
                select * from dual
                """;
        // 结果为true，和普通字符串一致
        System.out.println(aa.equals(bb));
        System.out.println(aa == bb);
    }

    /**
     * 文本块可以通过tab来缩进
     * 也可以通过方法指定空格数
     */
    @Test
    public void test02() {
        String aa = """
                hello world
                select * from dual
                """;
        System.out.println(aa);
        aa = """
                    hello world
                select * from dual
                """;
        System.out.println(aa);

        aa = """
                hello world
                select * from dual
                """.indent(10);
        System.out.println(aa);
    }

    /**
     * 文本框
     * 支持占位符,%后使用类型缩写
     * 支持转义符 \ 此处作为空格来操作的，只是为了展示效果
     */
    @Test
    public void test03() {
        String aa = """
                Name : %s
                Age : %d
                Sex : %s
                """.formatted("zhangsan",18,"男");
        System.out.println(aa);


        String bb = """
                测试很长很长的字符串，使用转义符 \
                这一行是已经换行后的第二行数据
                """;
        System.out.println(bb);
    }
}
